home *** CD-ROM | disk | FTP | other *** search
/ SunSoft Catalyst CDWARE 1996 May to August / Catalyst CDWARE 1996 May to August.iso / .products / Software_Research / test < prev    next >
Text File  |  1996-02-02  |  3KB  |  74 lines

  1. \f3STW/Advisor\f1(tm), part of the fully integrated \f3TestWorks\f1
  2. multi-platform suite of testing tools, analyzes source code to provide 
  3. measurements and 
  4. reports that aid in the management of project development.  Three 
  5. components are included in \f3STW/Advisor\f1:  \f3METRIC\f1(tm) for 
  6. quantitative analysis, \f3STATIC\f1(tm) for semantic and syntax 
  7. analysis, and \f3TDGEN\f1(tm) for test data/file generation.
  8.  
  9. \f3METRIC\f1 analyzes C, C++, Ada or FORTRAN source and calculates the
  10. Halstead Software Science Metrics to measure data complexity, the
  11. Cyclomatic Complexity Metrics to assess logic complexity, and basic size
  12. metrics, such as number of lines, comments and executable statements.
  13.  
  14. \f3METRIC\f1'S output includes a full report, which provides a set of 
  15. metrics for each of the modules in a given source file; a summary 
  16. report; an exception report, which lists where the code exceeds 
  17. user-defined metric thresholds; and Kiviat Charts.  
  18.  
  19. Software Science metrics derive hybrid metrics that
  20. include program length, predicted length, purity ratio, volume, and
  21. effort.
  22.  
  23. Cyclomatic Complexity Metrics determine the control-flow complexity of
  24. a program, based on the number and arrangement of decision points
  25. within the code.
  26.  
  27. Extended Cyclomatic Complexity determine the control-flow complexity
  28. of a program, based on the decision-making predicates.
  29.  
  30. Size Metrics include number of lines of code, number of blank lines,
  31. number of comment lines and the number of executable statements.
  32.  
  33. C programs are often the source of obscure bugs; many compilers pass
  34. bugs as legal C statements.  \f3STATIC\f1 handles C's unique problems by
  35. providing detailed syntax and semantic error/inconsistency reports for 
  36. C programs.  
  37.  
  38. A message report displays the source-code line, the file name, the 
  39. line number, and a brief message about the problem.  This includes 
  40. syntax and semantic messages, warning messages, information messages, 
  41. and elective notes.
  42.  
  43. Reports can be configured to display only selected types of messages.
  44.  
  45. \f3STATIC\f1 is more detailed than a compiler.  It points out code that
  46. is legal C, but is probably not what was intended, such as assignment 
  47. (=) versus test (==), use of bitwise operators (& or | versus && or !!),
  48. never executed code or an empty for loop.
  49.  
  50. \f3STATIC\f1 also looks across all source files to see if variable 
  51. references and function-call parameters match; it identifies 
  52. non-portable constructs, identifying pointer/pointer mixing, different 
  53. sizes for short, int and long, problems when char is used to hold a 
  54. character, signed/unsigned quantities, character set differences, and 
  55. identifier length.
  56.  
  57. In order to make up for limited resources and more fully test
  58. applications, \f3TDGEN\f1 creates additional tests from existing tests. 
  59.  
  60. A Template File describes how selected test data values are to be
  61. placed in a typical test file.
  62.  
  63. A Values File indicates the actual input test values, test value
  64. ranges or test value generation rules for data descriptors that
  65. appear in the template file.
  66.  
  67. \f3TDGEN\f1 processes the values file by constructing a data table with 
  68. field names as keys, then scans the template file
  69. for special syntax with identifier field names, and finally
  70. substitutes values from the data table associated with corresponding
  71. field names.  \f3TDGEN\f1 selects test values from the data table
  72. sequentially, randomly, specifically, or calculates the total
  73. number of combinations possible.
  74.